Advanced Pure Pursuit
Although standard pure pursuit suffices for the vast majority of use cases, there are still some improvements that can be made to take your autonomous movement system to the next level.
Adaptive Pure Pursuit
Unlike a typical pure pursuit algorithm, an adaptive pure pursuit will adjust your lookahead threshold to allow your robot to navigate a path in a smoother fashion.
Theory
https://www.chiefdelphi.com/t/paper-implementation-of-the-adaptive-pure-pursuit-controller/166552
Implementation
https://github.com/xiaoxiae/PurePursuitAlgorithm
https://github.com/Team254/FRC-2017-Public
Creating Smooth Paths via Cubic Spline Interpolation
Rather than inputting a plain set of control points into your pure pursuit algorithm, we can instead interpolate a smooth curve that intersects all of the control points to ensure the robot follows a smooth path while hitting all of the desired locations.